#############################################################################
# Makefile for building zxsp-x
# Generated by tmake at 18:14, 2000/01/06
#     Project: zxsp-x
#    Template: app
#############################################################################

####### Compiler, tools and options

CC	=	gcc
CXX	=	g++
CFLAGS	=	-pipe -Wall -W -O2 -fno-strength-reduce
CXXFLAGS=	-m486 -Wall -W -O2 -fno-strength-reduce
INCPATH	=	-I. -Ih -Iz80 -I$(QTDIR)/include
LINK	=	g++
LFLAGS	=	
LIBS	=	-L$(QTDIR)/lib -lqt -L/usr/X11R6/lib -lX11 -lXext
MOC	=	moc

TAR	=	tar -cf
GZIP	=	gzip -9f

####### Files

HEADERS =	h/audio.h \
		h/ay.h \
		h/data.h \
		h/files.h \
		h/keyboard.h \
		h/kio.h \
		h/main.h \
		h/options.h \
		h/screen.h \
		h/util.h \
		h/window.h \
		h/zxsp.xbm \
		h/zxsp.h \
		z80/codes.c \
		z80/codesCB.c \
		z80/codesED.c \
		z80/codesXX.c \
		z80/macros.h \
		z80/opcodes.h \
		z80/options.h \
		z80/z80.h \
		refreshxy.c
SOURCES =	z80/disass.cc \
		z80/z80.cc \
		audio.cc \
		ay.cc \
		files.cc \
		keyboard.cc \
		kio.cc \
		main.cc \
		screen.cc \
		util.cc \
		window.cc \
		zxsp.cc
OBJECTS =	z80/disass.o \
		z80/z80.o \
		audio.o \
		ay.o \
		files.o \
		keyboard.o \
		kio.o \
		main.o \
		screen.o \
		util.o \
		window.o \
		zxsp.o
SRCMOC	=	
OBJMOC	=	
DIST	=	README.html zxsp-x.jcc zxsp-x
TARGET	=	zxsp-x

####### Implicit rules

.SUFFIXES: .cpp .cxx .cc .C .c

.cpp.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cxx.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cc.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.C.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.c.o:
	$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<

####### Build rules

all: $(TARGET)

$(TARGET): $(OBJECTS) $(OBJMOC) 
	$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJMOC) $(LIBS)

moc: $(SRCMOC)

tmake: Makefile

Makefile: zxsp-x.pro
	tmake zxsp-x.pro -o Makefile

dist:
	$(TAR) zxsp-x.tar zxsp-x.pro $(SOURCES) $(HEADERS) $(DIST)
	$(GZIP) zxsp-x.tar

clean:
	-rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(TARGET)
	-rm -f *~ core

####### Compile

z80/disass.o: z80/disass.cc \
		z80/z80.h \
		z80/options.h

z80/z80.o: z80/z80.cc \
		z80/z80.h \
		z80/options.h \
		z80/macros.h \
		z80/opcodes.h \
		z80/codes.c \
		z80/codesXX.c \
		z80/codesCB.c \
		z80/codesED.c

audio.o: audio.cc \
		z80/options.h

ay.o: ay.cc \
		h/options.h \
		h/kio.h \
		z80/z80.h \
		z80/options.h \
		h/audio.h \
		h/ay.h \
		h/main.h

files.o: files.cc \
		z80/z80.h \
		z80/options.h \
		h/options.h \
		h/kio.h \
		h/zxsp.h \
		z80/z80.h \
		h/files.h \
		h/main.h \
		h/ay.h \
		h/audio.h \
		h/util.h \
		h/screen.h \
		h/window.h

keyboard.o: keyboard.cc \
		h/options.h \
		h/kio.h \
		h/main.h \
		h/screen.h \
		h/window.h

kio.o: kio.cc

main.o: main.cc \
		h/options.h \
		h/kio.h \
		z80/z80.h \
		z80/options.h \
		h/main.h \
		h/util.h \
		h/screen.h \
		h/window.h \
		h/files.h \
		h/ay.h \
		h/audio.h

screen.o: screen.cc \
		h/options.h \
		h/kio.h \
		z80/options.h \
		h/window.h \
		refreshxy.c

util.o: util.cc \
		h/options.h \
		h/kio.h \
		h/main.h \
		h/util.h

window.o: window.cc \
		z80/options.h

zxsp.o: zxsp.cc \
		z80/options.h

